Дан одномерный массив. Упорядочить элементы массива в порядке убывания частоты встречаемости. Если в массиве есть несколько элементов одинаковой частоты встречаемости, то они упорядочиваются по убыванию абсолютных значений элементов. Использовать сортировку простыми обменами, реализовав метод в виде подпрограммы — Pascal(Паскаль)

Program pascal;
Label m;
   Var
     k:byte;
     a:array [1..15] of real; //Я взял одномерный массив от 1 к 15. Значения можно поменять
     R:real;
     p:real;
    Begin
        for k:=1 to 15 do begin
        Writeln ('Введите',k,'-й элемент массива А'); // вводим числа в матрицу
        Readln (A[k]);
     end;
            
   
 m:  for K:=1 to 14 do
 begin
      if a[k]<a[k+1] then begin
                                p:=a[k];
                                a[k]:=a[k+1];
                                a[k+1]:=p;
                                goto m;
                                end;
                                end;
                                
      
 
      Writeln ('Отсортированный массив:');
      for k:=1 to 15 do
      Write (a[k],'  ');
      Writeln;
      Readln;
      end.

Следующий вариант

program sort;
const 
n=15;
var
a :array[1..n] of integer;
i,j,t :integer;
begin
writeln('Enter numbers');
 
for i:=1 to n do
read(a[i]);
 
for i:=1 to n-1 do
for j:=i+1 to n do
begin
 if a[i] < a[j] then
  begin
  t:=a[i];
  a[i]:=a[j];
  a[j]:=t;
  end;
end;
 
writeln;
for i:=1 to n do
write(a[i]);
 
end.

Leave a Comment

14 − 10 =